Enabling a user to choose a representative landmark to display at a particular zoom level on a digital map

ABSTRACT

A user is enabled to choose a particular landmark to display on a particular view of a digital map instead of a landmark chosen by a digital map designer. This particular landmark may then represent all landmarks that are in close proximity to each other within a geographical area on the digital map when only one of the landmarks can be displayed on that particular view of the digital map.

BACKGROUND

1. Technical Field

The present invention is generally directed to digital map systems. Morespecifically, the present invention is directed to a choice of oneparticular landmark to represent a plurality of landmarks in closeproximity to each other when only one of the landmarks can be displayedon a particular view of a digital map.

2. Description of Related Art

Digital maps are digital images that are generated from one or moresources of map data. Since the images are digital, different resolutionsof the images may be displayed at any time. For example, when thedigital image is first displayed to a user, it is displayed at a firstresolution. If the user decides to have a better view of the displayedimage at a particular location point, the user may zoom in onto thatlocation point. The digital image will then be expanded at that locationpoint and displayed at a second resolution. If the user later zooms halfway out from the location point, the view of the image may then becompressed and displayed at a third resolution.

When the user zooms in onto the location point, detailed information atthat location point is generally displayed on the map. As an example, inthe case where there is a plurality of landmarks in close proximity toeach other within a geographical area, the landmarks may be representedeach by a location point placed one on top of another at a particularresolution of the image. When a user zooms in on that geographical areaon the map, the location points may be separated from each other on theresulting view of the digital image.

Generally, when a plurality of landmarks is represented by locationpoints placed one on top of another on a view of a digital map, onelandmark is usually chosen by the digital map designer as arepresentative landmark for the plurality of landmarks. If the chosenlandmark is a business for example, the name of the business may bedisplayed on the view of the digital map at that geographical area.

Sometimes, however, a user may want a different landmark to be therepresentative landmark for the plurality of landmarks. For example,oftentimes users employ landmarks that are well-known to them as pointsof reference to orient themselves as well as to direct a person to alocation (i.e., down the street from Target, across the street fromWalmart or a couple of stores from Mailboxes etc.). If therepresentative landmark chosen by the software designer is not one thatis known to the user, the user may have difficulty orienting himself orherself, for instance, when viewing the digital map.

BRIEF SUMMARY

In one embodiment of the invention, a computer system and programproduct for enabling a user to select a representative landmark todisplay at a particular zoom level on a digital map are provided. Thecomputer system and program product comprise determining whether theuser zooms out of a first view of the digital map, displaying a secondview of the digital map in response to determining that the user zoomsout of the first view of the digital map, the second view of the digitalmap being of a lower resolution than the first view of the digital map,wherein displaying the second view of the digital map includesdetermining whether at least one geographical area of the digital mapincludes at least two landmarks therein, determining, in response todetermining that the at least one geographical area of the digital mapincludes the at least two landmarks, whether the at least two landmarksare to be displayed in the second view of the digital map in closeproximity to each other wherein an identification of each one of the atleast two landmarks cannot be indicated in the second view of thedigital map, prompting the user to select one of the at least twolandmarks to represent the at least two landmarks, and identifying theat least two landmarks on the second view of the digital map using thelandmark selected by the user.

In another embodiment of the invention a computer system and programproduct for enabling a user to select a representative landmark todisplay on a digital map are provided. The computer system and programproduct include determining whether the user selects a geographical areaon the digital map, determining, in response to determining that theuser selects the geographical area, whether the selected geographicalarea includes at least two landmarks therein, prompting the user toselect one of the at least two landmarks to represent the at least twolandmarks, in response to determining that the selected geographicalarea includes the at least two landmarks, and representing the at leasttwo landmarks on the digital map using the landmark selected by theuser.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 is an exemplary block diagram illustrating a distributed dataprocessing system according to an embodiment of the invention.

FIG. 2 is an exemplary block diagram of a server apparatus according toan embodiment of the invention.

FIG. 3 is an exemplary block diagram of a client apparatus according toan embodiment of the invention.

FIG. 4A depicts a digital map generated at a first resolution.

FIG. 4B depicts the digital map of FIG. 4A generated at a resolutionhigher than the first resolution.

FIG. 5 depicts a flowchart of a deployment of a software process thatincludes an embodiment of the present invention.

FIG. 6 depicts a flowchart of a representative process that implementsan embodiment of the invention.

FIG. 7 depicts a flowchart of an alternate process that is used inanother embodiment of the invention.

FIG. 8 depicts a flowchart of another alternate process used in yetanother embodiment of the invention.

DETAILED DESCRIPTION

With reference now to the figures, FIG. 1 depicts a pictorialrepresentation of a network data processing system 100 in which thepresent invention may be implemented. Network data processing system 100contains a network 102, which is the medium used to providecommunications links between various devices and computers connectedtogether within network data processing system 100. Network 102 mayinclude connections, such as wire, wireless communication links, orfiber optic cables etc.

In the depicted example, server 104 is connected to network 102 alongwith storage unit 106. In addition, clients 108, 110, and 112 areconnected to network 102. These clients 108, 110, and 112 may be, forexample, personal computers or network computers. In the depictedexample, server 104 provides data, such as boot files, operating systemimages, and applications to clients 108, 110 and 112. Clients 108, 110and 112 are clients to server 104. Network data processing system 100may include additional servers, clients, and other devices not shown. Inthe depicted example, network data processing system 100 is the Internetwith network 102 representing a worldwide collection of networks andgateways that use the TCP/IP suite of protocols to communicate with oneanother.

Referring to FIG. 2, a block diagram of a data processing system thatmay be implemented as a server, such as server 104 in FIG. 1, isdepicted in accordance with a preferred embodiment of the presentinvention. Data processing system 200 may be a symmetric multiprocessor(SMP) system including a plurality of processors 202 and 204 connectedto system bus 206. Alternatively, a single processor system may beemployed. Also connected to system bus 206 is memory controller/cache208, which provides an interface to local memory 209. I/O bus bridge 210is connected to system bus 206 and provides an interface to I/O bus 212.Memory controller/cache 208 and I/O bus bridge 210 may be integrated asdepicted.

Peripheral component interconnect (PCI) bus bridge 214 connected to I/Obus 212 provides an interface to PCI local bus 216. A number of modemsmay be connected to PCI local bus 216. Typical PCI bus implementationswill support four PCI expansion slots or add-in connectors.Communications links to network computers 108, 110 and 112 in FIG. 1 maybe provided through modem 218 and network adapter 220 connected to PCIlocal bus 216 through add-in boards. Additional PCI bus bridges 222 and224 provide interfaces for additional PCI local buses 226 and 228, fromwhich additional modems or network adapters may be supported. In thismanner, data processing system 200 allows connections to multiplenetwork computers. A memory-mapped graphics adapter 230 and hard disk232 may also be connected to I/O bus 212 as depicted, either directly orindirectly.

Those of ordinary skill in the art will appreciate that the hardwaredepicted in FIG. 2 may vary. For example, other peripheral devices, suchas optical disk drives and the like, also may be used in addition to orin place of the hardware depicted. The depicted example is not meant toimply architectural limitations with respect to the present invention.

The data processing system depicted in FIG. 2 may be, for example, anIBM e-Server pSeries system, a product of International BusinessMachines Corporation in Armonk, N.Y., running the Advanced InteractiveExecutive (AIX) operating system or LINUX operating system.

With reference now to FIG. 3, a block diagram illustrating a dataprocessing system is depicted in which in an embodiment of the inventionmay be implemented. Data processing system 300 is an example of a clientcomputer. Data processing system 300 employs a peripheral componentinterconnect (PCI) local bus architecture. Although the depicted exampleemploys a PCI bus, other bus architectures such as Accelerated GraphicsPort (AGP) and Industry Standard Architecture (ISA) may be used.Processor 302 and main memory 304 are connected to PCI local bus 306through PCI bridge 308. PCI bridge 308 also may include an integratedmemory controller and cache memory for processor 302. Additionalconnections to PCI local bus 306 may be made through direct componentinterconnection or through add-in boards. In the depicted example, localarea network (LAN) adapter 310, Small computer system interface (SCSI)host bus adapter 312, and expansion bus interface 314 are connected toPCI local bus 306 by direct component connection. In contrast, audioadapter 316, graphics adapter 318, and audio/video adapter 319 areconnected to PCI local bus 306 by add-in boards inserted into expansionslots. Expansion bus interface 314 provides a connection for a keyboardand mouse adapter 320, modem 322, and additional memory 324. SCSI hostbus adapter 312 provides a connection for hard disk drive 326, tapedrive 328, and compact disk read only memory (CD-ROM) drive 330. TypicalPCI local bus implementations will support three or four PCI expansionslots or add-in connectors.

An operating system runs on processor 302 and is used to coordinate andprovide control of various components within data processing system 300in FIG. 3. The operating system may be a commercially availableoperating system, such as Windows XP®, which is available from MicrosoftCorporation. An object oriented programming system such as Java may runin conjunction with the operating system and provide calls to theoperating system from Java programs or applications executing on dataprocessing system 300. “Java” is a trademark of Sun Microsystems, Inc.Instructions for the operating system, the object-oriented operatingsystem, and applications or programs are located on storage devices,such as hard disk drive 326, and may be loaded into main memory 304 forexecution by processor 302.

Those of ordinary skill in the art will appreciate that the hardware inFIG. 3 may vary depending on the implementation. Other internal hardwareor peripheral devices, such as flash ROM (or equivalent nonvolatilememory) or optical disk drives and the like, may be used in addition toor in place of the hardware depicted in FIG. 3. Also, the processes ofthe present invention may be applied to a multiprocessor data processingsystem.

As another example, data processing system 300 may be a stand-alonesystem configured to be bootable without relying on some type of networkcommunication interface, whether or not data processing system 300comprises some type of network communication interface. As a furtherexample, data processing system 300 may be a Personal Digital Assistant(PDA) device, which is configured with ROM and/or flash ROM in order toprovide non-volatile memory for storing operating system files and/oruser-generated data.

The depicted example in FIG. 3 and above-described examples are notmeant to imply architectural limitations. For example, data processingsystem 300 may also be a notebook computer or hand held computer as wellas a personal digital assistant (PDA). Further, data processing system300 may also be a kiosk or a Web appliance.

The present invention enables a user to choose one particular landmarkto represent a plurality of landmarks in close proximity to each otherwhen only one of the landmarks can be displayed on a particular view ofa digital map. The invention may be local to any one, a few or all ofthe clients 108, 110 and 112. Alternatively, the invention may reside onserver 104, especially when the server 104 is the system that generatesthe digital image instead of just passing map data to a requestingclient. Further, the present invention may be embodied on any datastorage medium (i.e., floppy disk, compact disk, hard disk, tape, ROM,random access memory (RAM), etc.) used by a computer system.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or program product.Accordingly, aspects of the present invention may take the form of anentirely hardware embodiment, an entirely software embodiment (includingfirmware, resident software, micro-code, etc.) or an embodimentcombining software and hardware aspects that may all generally bereferred to herein as a “circuit,” “module” or “system.” Furthermore,aspects of the present invention may take the form of a program productembodied in one or more computer readable medium(s) having computerreadable program code embodied thereon. Any combination of one or morecomputer readable medium(s) may be utilized. The computer readablemedium may be a computer readable signal medium or a computer readablestorage medium. A computer readable storage medium may be, for example,but not limited to, an electronic, magnetic, optical, electromagnetic,infrared, or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. More specific examples (a non-exhaustivelist) of the computer readable storage medium would include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), an optical fiber, a portable compact disc read-onlymemory (CD-ROM), an optical storage device, a magnetic storage device,or any suitable combination of the foregoing. In the context of thisdocument, a computer readable storage medium may be any tangible mediumthat can contain, or store a program for use by or in connection with aninstruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electromagnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

Note that, although the invention is shown to be used in conjunctionwith a conventional computer system (i.e., clients 108, 110, 112 andserver 104), the invention can easily be used by any handheld device(i.e., cellular telephones, PDAs etc.) so long as the handheld systemhas the ability to display digital maps or images.

FIG. 4A depicts a digital map generated at a first resolution. Thedigital map is generated using Google™ Maps, Google™ Maps is a productof Google, Inc. In order not to obfuscate the disclosure of theinvention, only items in the figures that are relevant to understandingthe present invention will be explained. Further, note that like itemsthroughout the several views of the invention have like numerals.

The digital map in FIG. 4A includes three location points placed veryclose to each other within a geographical area 410. As mentioned before,each location point in the geographical area 410 represents a landmark.Due to the resolution of the map, one landmark is used as therepresentative landmark for the geographical area 410. Therepresentative landmark, which has been chosen by the designer of themap, is labeled “B”. In this particular example, the landmarks arebusinesses and the name of the representative business is Estilo.

FIG. 4B depicts the digital map of FIG. 4A generated at a resolutionhigher than the first resolution. At that resolution, the three locationpoints are separated from each other. On this view of the digital map,the three location points are labeled landmark A, landmark B andlandmark D. Landmark A represents “Estilo”, landmark B represents“Runtex, Inc.”, and landmark D represents: “Legs Diamond Wild Shoes”.

As stated before, if a user is more familiar with “Runtex, Inc.” insteadof with “Estilo”, the user may preferably want “Runtex, Inc.” to be therepresentative landmark in geographical area 410 of FIG. 4A rather than“Estilo”. The present invention provides a user the opportunity toselect one landmark to represent a group of landmarks within ageographical area of a digital map.

FIG. 5 depicts a flowchart of a deployment of a software process thatincludes an embodiment of the present invention. Step 500 begins thedeployment software process. The first thing is to determine if thereare any programs that will reside on a server or servers when theprocess software is executed 502. If this is the case then the serversthat will contain the executables are identified 542. The processsoftware for the server or servers is transferred directly to theservers' storage via FTP or some other protocol or by copying throughthe use of a shared file system 544. The software process is theninstalled on the servers 546.

Next, a determination is made on whether the software process is to bedeployed by having users access the software process on a server orservers 504. If the users are to access the software process on serversthen the server addresses that will store the invention are identified506. A determination is made as to whether a proxy server is to be built520 to store the software process. A proxy server is a server that sitsbetween a client application, such as a Web browser, and a real server.It intercepts all requests to the real server to see if it can fulfillthe requests itself. If not, it forwards the request to the real server.The two primary benefits of a proxy server are to improve performanceand to filter requests. If a proxy server is required then the proxyserver is installed 524.

The software process is sent to the servers either via a protocol suchas FTP or it is copied directly from the source files to the serverfiles via file sharing 522. Another embodiment would be to send atransaction to the servers that contained the software process and havethe server process the transaction, then receive and copy the softwareprocess to the server's file system. Once the software process is storedat the servers, the users via their client computers, then access thesoftware process on the servers and copy to their client computers filesystems 526. Another embodiment is to have the servers automaticallycopy the process software to each client and then run the installationprogram for the process software at each client computer. The userexecutes the program that installs the software process on his clientcomputer 540 then exits the process 516.

In step 508 a determination is made as to whether the software processis to be deployed by sending the software process to users via e-mail.The set of users where the software process will be deployed areidentified together with the addresses of the user client computers 510.The process software is sent via e-mail to each of the users' clientcomputers in step 528. The users then receive the e-mail 530 and thendetach the process software from the e-mail to a directory on theirclient computers 532. The user executes the program that installs theprocess software on his client computer 540 then exits the process 516.

Lastly a determination is made on whether the process software will besent directly to user directories on their client computers 512. If so,the user directories are identified 514. The process software istransferred directly to the user's client computer directory 534. Thiscan be done in several ways such as but not limited to sharing of thefile system directories and then copying from the sender's file systemto the recipient user's file system or alternatively using a transferprotocol such as File Transfer Protocol (FTP). The users access thedirectories on their client file systems in preparation for installingthe process software 536. The user executes the program that installsthe process software on his client computer 540 then exits the process516.

FIG. 6 depicts a flowchart of a representative process that implementsan embodiment of the invention. The process starts when a digital map isdisplayed (step 600). As is well known in the art, the digital imagewill be first displayed at a first resolution. Once started, the processchecks to see whether the user zooms out of a location point (step 605).If not, the process returns to step 605. If the user zooms out of thelocation point, the map will be re-displayed at a second resolution thatis lower than the first resolution. At the second resolution, landmarksin a geographical area that were previously identified on the digitalmap may not be identified in the re-display of the image. Thus, whenredisplaying the image, the process checks to determine whether at leastone geographical area on the digital map has more than one landmarkcontained therein (step 610). If no geographical areas have more thanone landmark contained therein, the digital image is re-displayed (step630) and the process returns to step 605.

If there is at least one geographical area in the displayed digitalimage that has mote than one landmark contained therein, a check is madeto determine whether the landmarks can be represented in the re-displayof the image with their identification (step 615). If so, the digitalimage is re-displayed (step 630) and the process returns to step 605.

If at least one of the landmarks cannot be represented in the re-displayof the image with its identification, then the process prompts the userto select one landmark to represent the landmarks in the geographicalarea (step 620). In re-displaying the image (630), the process uses theselected landmark to represent the landmarks in the geographical area ofthe image and the process returns to step 605.

FIG. 7 depicts a flowchart of an alternate process that is used inanother embodiment of the invention. The process starts when a digitalmap is displayed (step 700). The process then continuously checks to seewhether a geographical area on the map is selected (step 705).Alternatively, the process may start upon a selection of a geographicalarea on the map. At that point, the system may generate an interrupt inorder to go through the process of the present invention.

Note that a geographical area in this case is any area on a digital mapthat contains at least one location point therein. In addition, allgeographical areas are delimited by two latitudinal and two longitudinalpoints forming either a rectangle or a square. Note further that theselection of the geographical area may occur via any one of a pluralityof conventional methods (e.g., pointing a mouse pointer on thegeographical area and left clicking or right clicking on the mouse,pointing a mouse pointer on the geographical area while simultaneouslypressing the right or left mouse button, or dragging a mouse pointerover the geographical area while simultaneously pressing the right orleft mouse button etc.) When a geographical area on a displayed digitalmap is selected, a check is made to determine whether or not there ismore than one point location within the geographical area (step 710). Ifnot, the process returns to step 705. In the case of an interrupt, theprocess ends in order to allow the system to return to the process thatwas being executed prior to the interrupt. If there is more than onelocation point in the geographical area, the system retrieves thelandmark associated with each location point (step 715). To do so, thesystem parses one or more databases associated with higher resolutionsof the digital map. Specifically using the longitudinal and latitudinalpoints of the selected geographical area, the system may parse adatabase associated with each higher resolution of the displayed digitalmap until all landmarks associated with the location points in theselected geographical area on the map is retrieved.

Upon retrieving the landmarks, the system displays the landmarks to theuser (step 720) and prompts the user to select a representative landmark(step 725). Once the representative landmark is selected, it will bedisplayed as the representative landmark whenever the resolution of thedigital map is not high enough to allow all landmarks within thegeographical area to be displayed. After using the selected landmark,the process returns to step 705 or ends in the case where an interruptis used to execute the process.

FIG. 8 depicts a flowchart of another alternate process used in yetanother embodiment of the invention. The process starts when a digitalmap is displayed (step 800). Once started, the process checks to seewhether the user has selected a landmark or location point (step 805).If not, the process returns to step 805. Otherwise, the user is promptedto specify whether the selected landmark or location point has priorityin a geographical area (step 810). The process checks to determinewhether the user has specified that the selected landmark or locationpoint has priority in the geographical area (step 815). If not, theprocess returns to step 815. If so, the process uses the selectedlandmark or the landmark associated with the selected location point asthe representative landmark in the geographical area (step 820) and theprocess returns to step 805.

In the processes outlined in FIGS. 6 to 8, a user has to select therepresentative landmark. However, the invention is not restricted tohaving the representative landmark chosen by the user. Rather, therepresentative landmark may automatically be selected by the system.

For example, the system may be configured such that the largest landmarkin a geographical area is automatically selected as the representativelandmark. The system may instead be configured such that a business withthe highest total sales in the geographical area is automatically chosenas the representative landmark.

Further, a previous navigation history or a user purchase history may beused to automatically select the representative landmark. For example,in the case of a navigation history, if a previous route had beencalculated to a known location and the known location is along a newroute calculation, the known location may be used as the representativelandmark for the geographical area on that new route. In the case of auser purchase history, more money spent at a particular businesslocation or higher transaction volume at that particular locationindicates an implicit knowledge of that business on the part of theuser. Hence, the business may automatically be used as therepresentative landmark of the geographical area.

The representative landmark may be automatically chosen based on userpreferences. For example, if a user indicates that the user is fond ofMoonBucks coffee shops, if there is a MoonBucks coffee shop within thegeographical area, the MoonBucks coffee shop may automatically beselected as the representative landmark.

In addition, the representative landmark may be automatically chosenbased on the popularity of a location as photographed in a socialphotography site, or based on an event publicized in a social networkingsite.

Note that icons may be used to display representative landmarks insteadof the text names of the landmarks. Further, symbols such as trademarks,logos etc, may be used to display the representative landmarks or scaledstreet view images may be used to display the representative landmarks.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise. It will be further understood that the terms “comprises”and/or “comprising,” when used in this specification, specify thepresence of stated features, integers, steps, operations, elements,and/or components, but do not preclude the presence or addition of oneor more other features, integers, steps, operations, elements,components, and/or groups thereof.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed.

The description of the present invention has been presented for purposesof illustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Forexample, the landmarks may be cities, parks, schools etc. Hence, theembodiment was chosen and described in order to best explain theprinciples of the invention, the practical application and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

1. A program product for enabling a user to select a representativelandmark to display at a particular zoom level on a digital mapcomprising: a computer readable storage medium having computer readableprogram code embodied therewith, the computer readable program codecomprising: computer readable code configured to determine whether theuser zooms out of a first view of the digital map; computer readablecode configured to display a second view of the digital map in responseto determining that the user zooms out of the first view of the digitalmap, the second view of the digital map being of a lower resolution thanthe first view of the digital map, wherein the computer readable codeconfigured to display the second view of the digital map includescomputer readable code to: determine whether at least one geographicalarea of the digital map includes at least two landmarks therein;determine, in response to determining that the at least one geographicalarea of the digital map includes the at least two landmarks, whether theat least two landmarks are to be displayed in the second view of thedigital map in close proximity to each other wherein an identificationof each one of the at least two landmarks cannot be indicated in thesecond view of the digital map; prompt the user to select one of the atleast two landmarks to represent the at least two landmarks; andidentify the at least two landmarks on the second view of the digitalmap using the landmark selected by the user.
 2. The program product ofclaim 1 wherein the computer readable code configured to display thesecond view of the digital map includes computer readable code toautomatically determine a physical size of the at least two landmarksand to automatically select the landmark that is physically larger insize to represent the at least two landmarks on the second view of thedigital map in response to determining that the identification of eachone of the at least two landmarks cannot be indicated in the second viewof the digital map.
 3. The program product of claim 1 wherein thecomputer readable code configured to display the second view of thedigital map includes computer readable code to automatically determinewhether the at least two landmarks are commercial businesses and toautomatically select the landmark that has a higher total sale of the atleast two landmarks to represent the at least two landmarks on thesecond view of the digital map in response to determining that theidentification of each one of the at least two landmarks cannot beindicated in the second view of the digital map.
 4. The program productof claim 1 wherein the computer readable code configured to display thesecond view of the digital map includes computer readable code toautomatically determine whether the digital map is being used fornavigation purposes, to automatically determine whether one of the atleast two landmarks is a location known from a previous navigationcalculation and to automatically select the landmark that is the knownlocation to represent the at least two landmarks on the second view ofthe digital map in response to determining that the identification ofeach one of the at least two landmarks cannot be indicated in the secondview of the digital map.
 5. The program product of claim 1 wherein thecomputer readable code configured to display the second view of thedigital map includes computer readable code to automatically determinewhether the at least two landmarks are commercial businesses, toautomatically determine whether the user has had a business transactionwith one of the at least two landmarks and to automatically select thelandmark with which the user has had the business transaction torepresent the at least two landmarks on the second view of the digitalmap in response to determining that the identification of each one ofthe at least two landmarks cannot be indicated in the second view of thedigital map.
 6. The program product of claim 5 wherein in response todetermining that the user has had a business transaction with the atleast two landmarks to automatically select the landmark with which theuser has had a higher transaction volume.
 7. A program product forenabling a user to select a representative landmark to display on adigital map comprising: a computer readable storage medium havingcomputer readable program code embodied therewith, the computer readableprogram code comprising: computer readable code configured to determinewhether the user selects a geographical area; computer readable codeconfigured to determine, in response to determining that the userselects the geographical area, whether the selected geographical areaincludes at least two landmarks therein; computer readable codeconfigured to prompt the user to select one of the at least twolandmarks to represent the at least two landmarks, in response todetermining that the selected geographical area includes the at leasttwo landmarks; and computer readable code configured to represent the atleast two landmarks on the digital map using the landmark selected bythe user.
 8. The program product of claim 7 wherein the computerreadable code configured to determine whether the selected geographicalarea includes at least two landmarks therein includes computer readablecode to automatically determine a physical size of the at least twolandmarks and to automatically select the landmark that is physicallylarger in size to represent the at least two landmarks.
 9. The programproduct of claim 7 wherein the computer readable code configured todetermine whether the selected geographical area includes at least twolandmarks therein includes computer readable code to automaticallydetermine whether the at least two landmarks are commercial businessesand to automatically select the landmark that has a higher total sale ofthe at least two landmarks to represent the at least two landmarks. 10.The program product of claim 7 wherein the computer readable codeconfigured to determine whether the selected geographical area includesat least two landmarks therein includes computer readable code toautomatically determine whether the digital map is being used fornavigation purposes, to automatically determine whether one of the atleast two landmarks is a location known from a previous navigationcalculation and to automatically select the landmark that is the knownlocation to represent the at least two landmarks.
 11. The programproduct of claim 7 wherein the computer readable code configured todetermine whether the selected geographical area includes at least twolandmarks therein includes computer readable code to automaticallydetermine whether the at least two landmarks are commercial businesses,to automatically determine whether the user has had a businesstransaction with one of the at least two landmarks and to automaticallyselect the landmark with which the user has had the business transactionto represent the at least two landmarks.
 12. The program product ofclaim 11 wherein in response to determining that the user has had abusiness transaction with the at least two landmarks to automaticallyselect the landmark with which the user has had a higher transactionvolume.
 13. A method in a computer system for enabling a user to selecta representative landmark to display on a digital map comprising:determining whether the user selects a geographical area; determining,in response to determining that the user selects the geographical area,whether the selected geographical area includes at least two landmarkstherein; prompting the user to select one of the at least two landmarksto represent the at least two landmarks, in response to determining thatthe selected geographical area includes the at least two landmarks; andrepresenting the at least two landmarks on the digital map using thelandmark selected by the user.
 14. The method of claim 13, whereindetermining whether the selected geographical area includes at least twolandmarks therein includes: determining a physical size of the at leasttwo landmarks and automatically selecting the landmark that isphysically larger in size to represent the at least two landmarks. 15.The method of claim 13, wherein determining whether the selectedgeographical area includes at least two landmarks therein includes:automatically determining whether the at least two landmarks arecommercial businesses and automatically selecting the landmark that hasa higher total sale of the at least two landmarks to represent the atleast two landmarks.
 16. The method of claim 13 wherein determiningwhether the selected geographical area includes at least two landmarkstherein includes: automatically determining whether the digital map isbeing used for navigation purposes; automatically determining whetherone of the at least two landmarks is a location known from a previousnavigation calculation; and automatically selecting the landmark that isthe known location to represent the at least two landmarks.
 17. Themethod of claim 13 wherein determining whether the selected geographicalarea includes at least two landmarks therein includes: automaticallydetermining whether the at least two landmarks are commercialbusinesses; automatically determining whether the user has had abusiness transaction with one of the at least two landmarks; andautomatically selecting the landmark with which the user has had thebusiness transaction to represent the at least two landmarks.
 18. Themethod of claim 17, wherein the method includes, in response todetermining that the user has had a business transaction with the atleast two landmarks: automatically selecting the landmark with which theuser has had a higher transaction volume.
 19. A computer systemcomprising: at least one storage system for storing a digital mapprogram; and at least one processor for processing the digital mapprogram, the system being configured with the program and the processorto display a digital map, to determine whether a user selects ageographical area on the displayed digital map, to determine, inresponse to determining that the user selects the geographical area,whether the selected geographical area includes at least two landmarkstherein, to prompt the user to select one of the at least two landmarksto represent the at least two landmarks, in response to determining thatthe selected geographical area includes the at least two landmarks, andto represent the at least two landmarks on the digital map using thelandmark selected by the user.
 20. The computer system of claim 19wherein the digital map program is processed to automatically determinea physical size of the at least two landmarks and to automaticallyselect the landmark that is physically larger in size to represent theat least two landmarks.
 21. The computer system of claim 19 wherein thedigital map program is processed to automatically determine whether theat least two landmarks are commercial businesses and to automaticallyselect the landmark that has a higher total sale of the at least twolandmarks to represent the at least two landmarks.
 22. The computersystem of claim 19 wherein the digital map program is processed toautomatically determine whether the digital map is being used fornavigation purposes, to automatically determine whether one of the atleast two landmarks is a location known from a previous navigationcalculation and to automatically select the landmark that is the knownlocation to represent the at least two landmarks.
 23. The computersystem of claim 19 wherein the digital map program is processed toautomatically determine whether the at least two landmarks arecommercial businesses, to automatically determine whether the user hashad a business transaction with one of the at least two landmarks and toautomatically select the landmark with which the user has had thebusiness transaction to represent the at least two landmarks.
 24. Thecomputer system of claim 23 wherein in response to determining that theuser has had a business transaction with the at least two landmarks toautomatically select the landmark with which the user has had a highertransaction volume.